OktaテンプレートWS-Federationアプリケーションを構成する

Oktaは、WS-Fed対応のアプリをオンデマンドで作成できるWS-Federationテンプレートアプリを提供しています。

このテンプレートアプリケーションを使用する場合、OktaはIDP(IDプロバイダー)として機能し、ターゲットアプリケーションはSP(サービスプロバイダー)になります。

WS-Fedの場合、Okta(IDPとして機能)はSP起点の認証をサポートします。認証フローは次のとおりです。

  1. 最初にターゲットSPに移動するか、Oktaのアプリをクリックします。この時点では、ユーザーとSP間でのセッションは確立しません。
  2. SPは、ユーザーを構成済みのログインURL(Oktaが生成したアプリインスタンスURL)にリダイレクトし、パッシブリクエストを送信します。
  3. Oktaにはパッシブリクエストが送信されます(既存のOktaセッションがあると仮定します)。
  4. Oktaは設定されたSPに応答を送信します。
  5. SPは応答を受信し、クレームが正しいことを確認します。これにより、SP側でセッションが確立されます。
  6. 認証は完了です。

WS-Fedの構成に使用するターゲットアプリ(SP)でより多くの構成が必要になります。Oktaは、WS-Fedアプリの説明でこの情報を提供しています(WS-Fedアプリ画面の[Sign On(サインオン)]タブからアクセスできます)。手順には、レルム、発行者、パッシブURL(前述のように、通常は上記のSP起点フローでのみ必要)が含まれます。構成はアプリに応じて異なります。WS-Fedをオンにすることがオールオアナッシング機能であるかどうかをSPベンダーに確認することをお勧めします。

レルム名

レルム名はIdPに対して一意である必要があります。すべての依拠当事者が、当事者ごとに生成された一意のエンドポイントの使用をサポートしているわけではありません。WS-Federation Template Appは、2つのレルムモードをサポートしています。

  • Oktaで生成されたレルム名を持つ共有エンドポイント

    レルム名を空のままにした場合、Oktaはアプリの外部キーを使用してレルム名を生成します。例:https://[orgname].okta.com/app/template_wsfed/sso/wsfed/passive。証明書利用者は要求に共通のエンドポイントを使用します。また、対象アプリのインスタンスはwtrealm=urn:okta:app:[key]クエリパラメーターで識別されます。

  • 顧客定義のレルム名を持つアプリエンドポイント

    お客様がレルム名を指定すると、Oktaはアプリ固有のエンドポイントを生成します。例:https://[orgname].okta.com/apt/template_wsfed/[key]/sso/wsfed/。名前空間はアプリであり、グローバルではないため、レルム名は再利用できます。レルム名は、構成値との一致の検証に使用され、それ以外には使用されません。

どちらの構成でも、SAMLアサーションの発行者は常にアプリインスタンスキーです。たとえば、http://www.okta.com/[key]。オーディエンスは、常に構成されたオーディエンス制限値です。レルム名と同じ値を使用することをお勧めしますが、必要に応じて別の値を使用できます。

テンプレートWS-Fedを追加して構成する

まず、テンプレートWS-Fedアプリをorgに追加する必要があります。最初にスーパーユーザーとしてプライベートアプリを追加する必要があります。

  1. Admin Console[Applications(アプリケーション)] に移動し、[Add Application(アプリケーションの追加)]をクリックして、[Search(検索)]ボックスにTemplate WS-Fedと入力します。
  2. テンプレートWS-Fedアプリで次のフィールドに入力します。これらのフィールドに入力する必要がある内容の詳細については、ターゲットアプリケーション(SP)のドキュメントを参照してください。
    • [Application Label(アプリケーションラベル)]:ユーザーのホームページに表示されるラベルをアプリに付けます。
    • [Web Application URL(WebアプリケーションURL)]:Webアプリケーションの起動URL。例:http://example.com
    • [Realm(レルム)]:リソースを安全に共有するように構成されているいくつかのドメインの1つ。レルムは、アプリケーションのURI(Uniform Resource Identifier)です。サインイン時にOkta IdPに送信されるのはIDです。セットアップ手順に示されているように、レルムを指定しない場合、Oktaはレルムを生成します。詳細については、上記の 「レルム名」 を参照してください。
    • [ReplyTo URL]:WS-Fed SPエンドポイント(ユーザーがログインする場所)です。例:http://test.acme.com/example-post-sign/。
    • [AllowReplyToOverride]:これにより、WebアプリケーションがReplyTo URLをreplyパラメーターでオーバーライドできるようになります。
    • [Name ID format(名前IDフォーマット)]:選択する値はアプリケーションによって異なります。これは、WS-Fed応答で送信するユーザー名の形式です。詳細については、SPのドキュメントを参照してください。
    • [Audience Restriction(オーディエンス制限)]SPのエンティティIDです。SPによって提供され、正確に一致する必要があります。詳細については、SPのドキュメントを参照してください。
    • [Assertion Authentication Context(アサーション認証コンテキスト)]:認証制限のタイプを示します。これは通常、パスワードで保護されたトランスポートに設定する必要があります。詳細については、SPのドキュメントを参照してください。
    • [Attribute Statements (Optional)(属性ステートメント(オプション))]Oktaプロファイルフィールド、LDAP、Active Directory、Workday値などのユーザー属性を統合できます。SPは、それに応じてフェデレーションWS-Fed属性値を使用します。詳細については、「テンプレートSAML 2.0またはWS FedアプリケーションでのActive Directory、LDAP、および稼働日の値のマッピング」 を参照してください。
    • [Group Name(グループ名)](オプション):WS-Fed応答属性ステートメントに含まれるこの属性の名前を入力します。次に、グループ(式を使用)をグループフィルターフィールドに入力して、この属性に含まれるグループを指定します。フィルタリングしたグループに属するすべてのユーザーは、WS-Fed応答属性ステートメントに含まれます。
    • [Group Attribute Value(グループ属性値)]:フィルタリングされたグループのWS-Fedアサーション属性値を指定します。この属性は、Active Directoryグループにのみ適用されます。選択肢は、WindowsDomainQualifiedName・samAccountName・dnです。
    • [Group filter (Optional)(グループフィルター(オプション))]:Group Nameフィールドで構成した属性に含めるユーザーグループを指定します。グループのフィルタリングに使用される正規表現を入力します。一致するユーザーグループに対応するADグループがある場合、属性ステートメントには、グループ属性値で指定された属性の値が含まれます。一致するユーザーグループに対応するADグループが含まれていない場合は、属性ステートメントでグループ名が使用されます。
    • [Username Attribute Statements(ユーザー名属性ステートメント)]:WS-Fedアサーションに含める追加のユーザー名属性ステートメントを指定します。これにより、サブジェクトステートメントを無視する.NETアプリとの統合が簡素化されます。選択肢には、ユーザー名、UPN、ユーザー名、UPNが含まれ、なしが含まれます。
    • [Custom Attribute Statements(カスタム属性ステートメント)]:カスタムSAML属性ステートメントを定義します。
    • [Signature Algorithm(署名アルゴリズム)]:SHA1またはSHA256のいずれかを選択します。
    • [Digest Algorithm(ダイジェストアルゴリズム)]:SHA1またはSHA256のいずれかを選択します。
    • [Application Visibility (Optional)(アプリケーションの可視性(オプション))]:ユーザーのホームページからアプリケーションアイコンを非表示にすることを選択できます。

ターゲットアプリケーション(SP)でWS-Fedを構成する

WS-Fedを機能させるには、ターゲットアプリケーション(SP)でいくつかの追加手順を実行する必要があります。

Note(注):SPのベンダーに連絡して、SAMLを有効にすることがオールオアナッシングオプションかどうかを判断することをお勧めします。Oktaは、ターゲットSPで作成する必要のあるすべての必要な構成情報を提供します。

この情報にアクセスするには、次の手順を実行します。

  1. 追加したテンプレートアプリのインスタンスをクリックします。
  2. [Sign On(サインオン)]タブを選択し、[View Setup Instructions(設定手順を表示)]をクリックします。

  3. 手順を[Configuration Data(構成データ)]セクションまでスクロールします。ここで、必要なすべてのSPエンドポイント構成情報を取得できます。

アプリをテストする

ユーザーをアプリに割り当て、ユーザーが正常に認証できることを確認します。

関連項目

OktaテンプレートアプリとOktaプラグインテンプレートアプリを構成する